package com.task.core.mapper;


import com.task.common.domain.info.KeyAndValue;
import com.task.core.domain.DataScriptTypeInfo;
import com.task.core.dto.request.DataScriptTypeRequestDTO;
import com.task.core.vo.resp.DataScriptTypeDetailRespVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 脚本类型管理(DataScriptType)表数据库访问层
 *
 * @author makejava
 * @since 2025-02-26 10:31:47
 */
@Mapper
public interface DataScriptTypeMapper {


    void addScriptType(DataScriptTypeRequestDTO request);

    List<KeyAndValue> getScriptTypeForOption(DataScriptTypeRequestDTO request);

    List<DataScriptTypeInfo> getScriptTypeByPage(DataScriptTypeRequestDTO request);

    Integer modifyScriptType(DataScriptTypeRequestDTO request);

    Integer deleteScriptType(@Param("code")String scriptTypeCode, @Param("userId")Long userId);

    DataScriptTypeInfo getScriptTypeCode(@Param("code")String code);

    DataScriptTypeDetailRespVo getScriptTypeDetail(DataScriptTypeRequestDTO dataScriptTypeRequestDTO);
}

